package com.hdu.priority;

import java.util.concurrent.TimeUnit;

public class Test {
    public static void main(String[] args) {
        PriorityThreadPool priorityThreadPool =
                new PriorityThreadPool(1, 1, 0, TimeUnit.SECONDS);
        for (int priority = 19; priority >= 0; priority--) {
            final int finalPriority = priority + 1;
            priorityThreadPool.execute(
                    () -> {
                        try {
                            TimeUnit.MILLISECONDS.sleep(500);
                            System.out.println("当前任务优先级 ：" + finalPriority);
                        } catch (InterruptedException e) {
                            throw new RuntimeException(e);
                        }
                    },
                    priority
            );
        }
        //当前任务优先级 ：20
        //当前任务优先级 ：1
        //当前任务优先级 ：2
        //当前任务优先级 ：3
        //当前任务优先级 ：4
        //当前任务优先级 ：5
        //当前任务优先级 ：6
        //当前任务优先级 ：7
        //当前任务优先级 ：8
        //当前任务优先级 ：9
        //当前任务优先级 ：10
        //当前任务优先级 ：11
        //当前任务优先级 ：12
        //当前任务优先级 ：13
        //当前任务优先级 ：14
        //当前任务优先级 ：15
        //当前任务优先级 ：16
        //当前任务优先级 ：17
        //当前任务优先级 ：18
        //当前任务优先级 ：19
    }
}
